var check_counter = 0;

$(document).ready(function() {

	function navigationShow() {
		$('#navigation').stop(true, true).addClass('open');
		// $('#navigation').css('width', '250px');
		// $('#navigation').find('li').css('min-width', '250px');
		// $('#navigation').children('ul').children('li').children('a').children('span').show();
		// $('#navigation').find('.nav-sub').show();
	}

	function navigationHide() {
		$('#navigation').stop(true, true).removeClass('open');
		// $('#navigation').css('width', '60px');
		// $('#navigation').find('li').css('min-width', '');
		// $('#navigation').children('ul').children('li').children('a').children('span').hide();
		// $('#navigation').find('.nav-sub').hide();
	}

	//======================   JAVASCRIPT MENU NAVIGATION   ======================
	$('#navigation').live({
		mouseover:
			function(){
				navigationShow();
			},
		mouseout:
			function(){
				navigationHide();
			}
	   }
	);
	//===================================================================   SELESAI



	//======================   MENAMBAHKAN EFEK SAAT HOVER PADA HEADER INFO   ======================	
	$('.dropdown-toggle').hover(function() {
		$('#header-info').css('background-color', 'blue');
	}, function() {
		$('#header-info').css('background-color', '#08c');
	});
	//===================================================================   SELESAI



	//======================   MENAMBAHKAN TOOLTIP PADA INPUT DAN TEXT AREA   ======================
	$('input').each(function(index, el) {
		if ($(this).data("toggle") == "tooltip") {
			$(this).tooltip();
		};
	});

	$('textarea').each(function(index, el) {
		if ($(this).data("toggle") == "tooltip") {
			$(this).tooltip();
		};
	});
	
	$('i').each(function(index, el) {
		if ($(this).data("toggle") == "tooltip") {
			$(this).tooltip();	
		};
	});

	$('button').each(function(index, el) {
		if ($(this).data("toggle") == "tooltip") {
			$(this).tooltip();	
		};
	});

	$('span').each(function(index, el) {
		if ($(this).data("toggle") == "tooltip") {
			$(this).tooltip();	
		};
	});
	//===================================================================   SELESAI



	//======================   JAVASCRIPT UNTUK ICON CHECK PADA TABEL   ======================
	$('.check').live('click',function(){
		if($(this).parent('td').find('.check-real').is(':checked')){
			check_counter--;
			$(this).parent('td').find('.check-real').removeAttr('checked');
			$(this).addClass('opa3').addClass('fa-square-o').removeClass('fa-check-square-o');
			$(this).parent('td').parent('tr').removeClass('info');
		}else{
			check_counter++;
			$(this).parent('td').find('.check-real').attr('checked','checked');
			$(this).removeClass('opa3').removeClass('fa-square-o').addClass('fa-check-square-o');
			$(this).parent('td').parent('tr').addClass('info');
		}
		
		if(check_counter > 0){
			$('.btn-hapus').removeClass('disabled');
		} else{
			$('.btn-hapus').addClass('disabled');
		}
		
		if(check_counter==$('.check').length){
			$('.check-all').removeClass('opa3').removeClass('fa-square-o').addClass('fa-check-square-o');
			$('.check-real-all').attr('checked','checked');
		} else{
			$('.check-all').addClass('opa3').addClass('fa-square-o').removeClass('fa-check-square-o');;
			$('.check-real-all').removeAttr('checked');
		}
	});

	$('.check-all').click(function(){
		var cekCentang = $(this).parent('th').find('.check-real-all');
		if(cekCentang.is(':checked')){
			$('.check').each(function(){
				var temp = $(this);
				if($(this).parent('td').find('.check-real').is(':checked')){	
					temp.click();
				}
			});
			cekCentang.removeAttr('checked');
			$(this).addClass('opa3').addClass('fa-square-o').removeClass('fa-check-square-o');
		} else {
			$('.check').each(function(){
				var temp = $(this);
				if(!$(this).parent('td').find('.check-real').is(':checked')){	
					temp.click();
				}
			});
			cekCentang.attr('checked','checked');
			$(this).removeClass('opa3').removeClass('fa-square-o').addClass('fa-check-square-o');
		}
	});
	//===================================================================   SELESAI


	
	//======================   JAVASCRIPT UNTUK DELETE ISI TABEL   ======================
	$('.btn-hapus').click(function(event) {
		/* Act on the event */
		var confirmDelete = confirm("apakah anda yakin ingin menghapus data ini?");
		if (confirmDelete) {
			var that = $(this);
			var parentTable = that.closest('.table-placer');
			var delArrVal = [];
			parentTable.find('.check-real').each(function(index, el) {
				if ($(el).is(":checked")) {
					delArrVal.push($(el).val());
				};
			});
			var dataForm = {
				table: parentTable.data("table"),
				field: parentTable.data("prim-field"),
				vals: delArrVal
			}
			$.ajax({
				url: 'ajax/ajax-delete.php',
				type: 'POST',
				dataType: 'json',
				data: dataForm,
			})
			.done(function(data) {
				location.reload();
			})
			.fail(function() {
				console.log("error");
			})
			.always(function() {
				console.log("complete");
			});
		};

		
	});

	//===================================================================   SELESAI



	//======================   JAVASCRIPT UNTUK NAVIGASI SHORTKEY GLOBAL   ======================
	$(document).keydown(function(event) {
		/* Act on the event */
		// console.log(event.keyCode);
		switch (event.keyCode) {
			case 27:
				event.preventDefault();
				if ($('.esc').prop("tagName") == "A") {
					window.location = $('.esc').attr('href');
				} else {
					$('.esc').click();
				}
				break;
			case 112:
				// if (!$('#navigation').hasClass('open')) {
				// 	navigationShow();
				// } else {
				// 	navigationHide();
				// }
				event.preventDefault();
				if ($('.f1').prop("tagName") == "A") {
					window.location = $('.f1').attr('href');
				} else {
					$('.f1').click();
				}
				break;
			case 113:
				event.preventDefault();
				if ($('.f2').prop("tagName") == "A") {
					window.location = $('.f2').attr('href');
				} else {
					$('.f2').click();
				}
				break;
			case 114:
				event.preventDefault();
				if ($('.f3').prop("tagName") == "A") {
					window.location = $('.f3').attr('href');
				} else {
					$('.f3').click();
				}
				break;
			case 115:
				event.preventDefault();
				if ($('.f4').prop("tagName") == "A") {
					window.location = $('.f4').attr('href');
				} else {
					$('.f4').click();
				}
				break;
			case 116:
				event.preventDefault();
				window.location.reload();
				// if ($('.f5').prop("tagName") == "A") {
				// 	window.location = $('.f5').attr('href');
				// } else {
				// 	$('.f5').click();
				// }
				break;
			case 117:
				event.preventDefault();
				if ($('.f6').prop("tagName") == "A") {
					window.location = $('.f6').attr('href');
				} else {
					$('.f6').click();
				}
				break;
			case 118:
				event.preventDefault();
				if ($('.f7').prop("tagName") == "A") {
					window.location = $('.f7').attr('href');
				} else {
					$('.f7').click();
				}
				break;
			case 119:
				event.preventDefault();
				if ($('.f8').prop("tagName") == "A") {
					window.location = $('.f8').attr('href');
				} else {
					$('.f8').click();
				}
				break;
			case 120:
				event.preventDefault();
				if ($('.f9').prop("tagName") == "A") {
					window.location = $('.f9').attr('href');
				} else {
					$('.f9').click();
				}
				break;
			case 121:
				event.preventDefault();
				if ($('.f10').prop("tagName") == "A") {
					window.location = $('.f10').attr('href');
				} else {
					$('.f10').click();
				}
				break;
			case 122:
				event.preventDefault();
				if ($('.f11').prop("tagName") == "A") {
					window.location = $('.f11').attr('href');
				} else {
					$('.f11').click();
				}
				break;
			case 123:
				event.preventDefault();
				if ($('.f12').prop("tagName") == "A") {
					window.location = $('.f12').attr('href');
				} else {
					$('.f12').click();
				}
				break;
		}
		// console.log(x);
	});
	//===================================================================   SELESAI



	//======================   JAVASCRIPT UNTUK FOKUS FORM   ======================
	$('form').find('input').on('focus', function(event) {
		$(this).closest('form').closest('div').addClass('box_shadow');
	});
	$('form').find('textarea').on('focus', function(event) {
		$(this).closest('form').closest('div').addClass('box_shadow');
	});
	$('form').find('select').on('focus', function(event) {
		$(this).closest('form').closest('div').addClass('box_shadow');
	});
	$('form').find('input').on('blur', function(event) {
		$(this).closest('form').closest('div').removeClass('box_shadow');
	});
	$('form').find('textarea').on('blur', function(event) {
		$(this).closest('form').closest('div').removeClass('box_shadow');
	});
	$('form').find('select').on('blur', function(event) {
		$(this).closest('form').closest('div').removeClass('box_shadow');
	});
	$('form').find('label').each(function(index, el) {
		$(this).live('click', function(event) {
			$(this).closest('div').find('input').focus();
			$(this).closest('div').find('textarea').focus();
			$(this).closest('div').find('select').focus();
		});
	});
	//===================================================================   SELESAI


	// ================================================ JS UNTUK DATEPICKER =======
	$('.datePicker').datepicker({
	  changeYear:'true',
	  changeMonth:'true',
	  yearRange:'1945:+2',         
	  dateFormat: 'yy-mm-dd'
  });
  
  $('.datePicker').change(function() {
	  this.focus();
  });
	//===================================================================   SELESAI


	$('.logout-button').click(function(event) {
		var formLogin = {
			act: 2
		}
		$.ajax({
			url: '/action/act_login.php',
			type: 'POST',
			data: formLogin,
			cache: false, 
      success: function(data){
      	if (data == "sukses") {
        	alert("Anda berhasil keluar.");
        	location.reload();
      	} else {
      		location.reload();
      	}
      }
		})
	});

	// ================================================ JS UNTUK VALIDASI HARGA =======

	$('.currency').autoNumeric('init', {
		aSign: 'IDR ',
		aPad: false
	});

	//===================================================================   SELESAI

});


function validate_form() {
	$('.alert_val').each(function(index, el) {
		$(this).remove();
	});

	var is_valid = true;

	$('form').find('.required').each(function(index, el) {
		var that = $(this);
		if ($(this).val() == "") {
			$('.alert_container').html(
					'<div class="alert alert-danger alert_val">'+
			  		'<button type="button" class="close" data-dismiss="alert">&times;</button>'+
			  		'<span>Please fill in the fields.</span>'+
					'</div>'
			);
			$('.alert_val').slideDown(function(){
				that.focus();
			});
			is_valid = false;
			return false;
		};
	});

	if (is_valid) {
		return true;
	} else {
		return false;
	}
}

function alert_text(text, tipe) {
	$('.alert_container').append(
		'<div class="alert alert-'+tipe+' alert_val">'+
  		'<button type="button" class="close" data-dismiss="alert">&times;</button>'+
  		'<span>'+text+'</span>'+
		'</div>'
	)

	setTimeout(function(){
		$('.alert_container').find('.alert').slideUp('medium');
	}, 7000);
}

function validate_name(par_id, par_nama, par_act, par_act_form, par_table) {
	var urlName = '/action/act_'+par_table+'.php';

	var validateName = {
		id: par_id,
		nama: par_nama,
		act: par_act,
		act_form: par_act_form
	}

	$.ajax({
		url: urlName,
		type: 'POST',
		data: validateName,
	})
	
	.done(function(data) {
		if (data == 1) {
			$('#alert-name').slideDown('medium');
			$('.btn-simpan').attr('disabled', 'disabled');
		}else{
			$('#alert-name').slideUp('medium');
			$('.btn-simpan').removeAttr('disabled');
		};
	})
}

function validate_code(par_id, par_code, par_act, par_act_form, par_table) {
	var urlName = '/action/act_'+par_table+'.php';

	var validateCode = {
		id: par_id,
		kode: par_code,
		act: par_act,
		act_form: par_act_form
	}

	$.ajax({
		url: urlName,
		type: 'POST',
		data: validateCode,
	})
	
	.done(function(data) {
		if (data == 1) {
			$('#alert-code').slideDown('medium');
			$('.btn-simpan').attr('disabled', 'disabled');
		}else{
			$('#alert-code').slideUp('medium');
			$('.btn-simpan').removeAttr('disabled');
		};
	})
}
